GOOD SHIT


::test is a global test variable


std::setprecision and std::setw have to have #include <iomanip>
namespace fbz = foo::bar::baz; (how to create an alias for a namespace)

namespace { /*stuff here*/ };

is equivalent to

namespace unique {/*empty*/};
using namespace unique;
namespace unique {/*stuff here*/};

Basically, empty namespaces are equivalent to static, in that they allow for global variables or functions that only exist within that file.


Deep copy copies the values over, shallow copy causes both of the variables (copied and copier) to point to the same location in memory
std::move is used to convert to rvalue,std::swap is used to swap using pointers
1. Perfect fit
2. Promotion
short->int
char->int
float->double
enum->int
3. Conversion (Demotions fall under here, but with warnings)

foo(char,float)
foo(int,int)

foo('a','a')

Which one wins? Answer: AMBIGUOUS


EXAMS DON'T USE FLAGS
const int ** <- low-level const int * const * <- top-level const int ** const <- top-level const
Increment non-member non-friend functions must pass in a reference to the class, ie

Weapon& operator++(Weapon & w)


std::sort, std::copy
char & c CANNOT BE EQUALS TO int i. THERES NO PROMOTION OR CONVERSION. NONE!
EXTRA CREDIT:

What are the operators that cannot be overloaded?

::
?:
.
.*

SHIT TO CLARIFY


EXAM IS IN LT6C